"""
Flask应用主文件
"""
from flask import Flask

from config import Config
from routes import register_routes

def create_app(config_class=Config):
    """
    应用工厂函数
    
    Args:
        config_class: 配置类
    
    Returns:
        Flask: 应用实例
    """
    app = Flask(__name__)
    app.config.from_object(config_class)
    
    # 初始化配置
    config_class.init_app(app)
    
    # 启用CORS（如果可用）
    try:
        from flask_cors import CORS
        CORS(app)
    except ImportError:
        # 如果flask-cors未安装，前端和后端在同一服务器时可以不需要
        # 如果前后端分离，需要安装：pip install flask-cors
        pass
    
    # 注册路由
    register_routes(app)
    
    return app

# 创建应用实例
app = create_app()

if __name__ == '__main__':
    from config import Config
    app.run(debug=True, host=Config.HOST, port=Config.PORT)
